<template>
    <van-datetime-picker
      v-model="currentDate"
      type="date"
      title="选择年月日"
      :min-date="minDate"
      :max-date="maxDate"
      @confirm="onConfirm"
      @cancel="$emit('close')"
    />
</template>

<script>
import { updateUserProfileAPI } from '../../../api/index.js'
import dayjs from 'dayjs'
export default {
  name: 'BirthdayEdit',
  props: {
    birthday: {
      type: String,
      default: ''
    }
  },
  data () {
    return {
      minDate: new Date(1900, 0, 1), // 最小日期
      maxDate: new Date(), // 最大日期
      currentDate: new Date(this.birthday) // 当前选中事件
    }
  },
  methods: {
    async onConfirm (value) {
      try {
        await updateUserProfileAPI({
          // 利用dayjs插件将时间转换成标准格式的字符串
          birthday: dayjs(value).format('YYYY-MM-DD')
        })
        this.$toast.success('修改成功')

        // 修改成功后需要关闭页面并更新内容
        // 更新视图
        this.$emit('update:birthday', dayjs(value).format('YYYY-MM-DD'))

        // 关闭弹窗
        this.$emit('close')
      } catch (error) {
        console.log(error)
        this.$toast.fail('修改失败')
      }
    }
  }
}
</script>

<style>

</style>
